package com.example.collectiondemo.list.removeall;

import java.util.ArrayList;
import java.util.List;

public class UserList {
    private List<User> subList;
    private List<User> allList;

    public UserList(){
        subList=new ArrayList<User>();
        allList=new ArrayList<User>();

        for(int i=0;i<3;i++){
            User user=new User();
            user.setAge(i);
            user.setName("lyh"+i);
            subList.add(user);
        }

        for(int i=0;i<10;i++){
            User user=new User();
            user.setAge(i);
            user.setName("lyh"+i);
            allList.add(user);
        }
    }

    public static void main(String[] args){

        UserList userList=new UserList();
        System.out.println(userList.allList.removeAll(userList.subList));
        userList.allList.removeAll(userList.subList);//调用removeAll方法
        System.out.println(userList.allList.size());

        //removeAll返回false，是因为没有重写对象的 hascode,和equal 方法
        //false 因为在执行removeAll方法时，会先对集合元素进行比较，如果元素相等才执行移除操作，因为不相等（equals），所以没有执行移除

    }
}

